using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Threading.Tasks;
using Newtonsoft.Json;
using FreeSql.DataAnnotations;

namespace Ledict.ConditionExtract.Model {

	/// <summary>
	/// 法规
	/// </summary>
	[JsonObject(MemberSerialization.OptIn)]
	public partial class T_Law {

		[JsonProperty, Column(IsPrimary = true)]
		public int L_ID { get; set; }

		/// <summary>
		/// 效力等级(字典值ID)
		/// </summary>
		[JsonProperty]
		public int? EffectiveGrade_ID { get; set; }

		/// <summary>
		/// 时效性(字典值ID)
		/// </summary>
		[JsonProperty]
		public int? EffectiveStatus_ID { get; set; }

		[JsonProperty]
		public int? IsBasicLaw { get; set; }

		/// <summary>
		/// 未拆篇（0）、父篇（2）、批准决定子篇（3）、有权子篇（4）、无权子篇（1）。
		/// </summary>
		[JsonProperty]
		public int? IsSplit { get; set; }

		/// <summary>
		/// 题注
		/// </summary>
		[JsonProperty, Column(DbType = "varchar(MAX)")]
		public string L_Caption { get; set; } = string.Empty;

		/// <summary>
		/// 效力状态变更方式
		/// </summary>
		[JsonProperty, Column(DbType = "nvarchar(50)")]
		public string L_ChangeMode { get; set; } = string.Empty;

		/// <summary>
		/// 新旧条文对比问题原因
		/// </summary>
		[JsonProperty, Column(DbType = "nvarchar(2000)")]
		public string L_CompareQuestion { get; set; } = string.Empty;

		/// <summary>
		/// 新旧条文对比设置篇类型 0默认新法规、1依据、2其他法规
		/// </summary>
		[JsonProperty]
		public int? L_CompareType { get; set; }

		/// <summary>
		/// 公布日期
		/// </summary>
		[JsonProperty, Column(DbType = "date")]
		public DateTime? L_DateIssued { get; set; }

		/// <summary>
		/// 格式化文号
		/// </summary>
		[JsonProperty, Column(DbType = "varchar(500)")]
		public string L_DocNumberFormat { get; set; } = string.Empty;

		/// <summary>
		/// 文号
		/// </summary>
		[JsonProperty, Column(DbType = "nvarchar(500)")]
		public string L_DocumentNumber { get; set; } = string.Empty;

		/// <summary>
		/// 制定日期
		/// </summary>
		[JsonProperty, Column(DbType = "varchar(50)")]
		public string L_DrawUpDate { get; set; } = string.Empty;

		[JsonProperty, Column(DbType = "varchar(50)")]
		public string L_DrawUpType { get; set; } = string.Empty;

		/// <summary>
		/// 制定单位
		/// </summary>
		[JsonProperty, Column(DbType = "varchar(500)")]
		public string L_DrawUpUnit { get; set; } = string.Empty;

		/// <summary>
		/// 生效日期
		/// </summary>
		[JsonProperty, Column(DbType = "date")]
		public DateTime? L_EffectiveDate { get; set; }

		/// <summary>
		/// 实施时间
		/// </summary>
		[JsonProperty]
		public DateTime? L_EnforceDate { get; set; }

		/// <summary>
		/// 失效日期
		/// </summary>
		[JsonProperty, Column(DbType = "date")]
		public DateTime? L_ExpiryDate { get; set; }

		/// <summary>
		/// 文件类型
		/// </summary>
		[JsonProperty, Column(DbType = "nvarchar(50)")]
		public string L_FileType { get; set; } = string.Empty;

		/// <summary>
		/// 法规筛选数据类型,(疑似问题数据1,正常数据0,疑似重复2，纯附件3,附件是另装篇4)
		/// </summary>
		[JsonProperty]
		public int? L_FilterDataType { get; set; }

		/// <summary>
		/// 公布机关
		/// </summary>
		[JsonProperty, Column(DbType = "nvarchar(500)")]
		public string L_IssuingAuthorityOrginal { get; set; } = string.Empty;

		/// <summary>
		/// 效力状态标记数据是否完成 0已完成,1未完成,2不处理
		/// </summary>
		[JsonProperty]
		public int? L_MarkStateType { get; set; }

		/// <summary>
		/// 法规名称
		/// </summary>
		[JsonProperty, Column(DbType = "nvarchar(1000)")]
		public string L_Name { get; set; } = string.Empty;

		/// <summary>
		/// 名称关键词
		/// </summary>
		[JsonProperty, Column(DbType = "varchar(500)")]
		public string L_Name_KeyWord { get; set; } = string.Empty;

		/// <summary>
		/// 关联法规ID
		/// </summary>
		[JsonProperty]
		public int? L_ParentlawID { get; set; }

		/// <summary>
		/// 处理状态
		/// </summary>
		[JsonProperty]
		public int? L_ProcessState { get; set; }

		/// <summary>
		/// 关键词构造状态 0为未处理，1未完成，2已完成，3不处理
		/// </summary>
		[JsonProperty]
		public int? L_ProcessStateKeyWord { get; set; }

		[JsonProperty, Column(DbType = "nvarchar(500)")]
		public string L_Standardcatname { get; set; } = string.Empty;

		/// <summary>
		/// 标准制定单位
		/// </summary>
		[JsonProperty, Column(DbType = "varchar(500)")]
		public string L_StanDrawUpUnit { get; set; } = string.Empty;

		/// <summary>
		/// 副标题
		/// </summary>
		[JsonProperty, Column(DbType = "varchar(1000)")]
		public string L_Subheading { get; set; } = string.Empty;

		/// <summary>
		/// 副标题数量
		/// </summary>
		[JsonProperty]
		public int? L_SubheadingNum { get; set; }

		/// <summary>
		/// 三定方案
		/// </summary>
		[JsonProperty, Column(DbType = "nvarchar(150)")]
		public string L_ThreeScheme { get; set; } = string.Empty;

		/// <summary>
		/// 连接数量
		/// </summary>
		[JsonProperty]
		public int? LankNum { get; set; }

		/// <summary>
		/// 效力状态
		/// </summary>
		[JsonProperty, Column(DbType = "nvarchar(50)")]
		public string LM_Effectivestatus { get; set; } = string.Empty;

		/// <summary>
		/// 拆篇后关联的父级ID
		/// </summary>
		[JsonProperty]
		public int? ParentID_Split { get; set; }

		/// <summary>
		/// 拆篇数量
		/// </summary>
		[JsonProperty]
		public int? SplitNum { get; set; }

	}

}
